Declarative Metaprogramming to Support Reuse in Vertical Markets
نویسنده
چکیده
To eliminate the difficulties caused by the implicit nature of the natural relationship between domain models (and the corresponding delta-analyses) and framework instances, we aim to provide a mechanism for the construction of a bidirectional, concrete, active link between domain models and framework code by constructing a new instance of declarative metaprogramming. This instance supports a symbiosis between a prototype-based, framebased knowledge representation language and an object-oriented programming language. This implies that framework code in the object-oriented language co-evolves with the corresponding knowledge representation. Representing domain-dependent concepts in the same knowledge representation allows us to transform delta-analyses into framework reuse plans, and to translate changes in the framework code into domain knowledge adaptations, at a prototypebased and frame-based level.
منابع مشابه
Using Declarative Metaprogramming To Detect Possible Refactorings
In this paper, we advocate the use of declarative metaprogramming to detect violations of important (object-oriented) design guidelines and best practices. This is particularly useful for detecting when a design should be refactored, and which refactorings in particular should be applied. As we will show, a declarative environment incorporating metaprogramming capabilities is very well suited f...
متن کاملConcurrent Programming Constructs and First-Class Logic Engines
Multi-threading has been adopted in today’s Prolog implementations as it became widely available in implementation languages like C or Java. An advantage of multi-threading over more declarative concurrency models like various AND-parallel and OR-parallel execution schemes, is that it maps to the underlying hardware directly: on typical multi-core machines threads and processes are mapped to di...
متن کاملHigh-Level Models for Transformation-Oriented Design of Hardware and Embedded Systems
Evolution of design methodologies follows a common trail: technology scaling leads to growing design complexity and rising abstraction level in the domain. Introduction of new (higher) abstraction levels emphasizes the importance of reuse and transformations. The design process can be seen as a sequence of high-level transformations from the higher-level specification to the lower-level one. We...
متن کاملAn Integrated Development Environment for Declarative Multi-Paradigm Programming
In this paper we present CIDER (Curry Integrated Development EnviRonment), an analysis and programming environment for the declarative multi-paradigm language Curry. CIDER is a graphical environment to support the development of Curry programs by providing integrated tools for the analysis and visualization of programs. CIDER is completely implemented in Curry using libraries for GUI programmin...
متن کاملA Declarative Evolution Framework for Object-Oriented Design Patterns
Object-oriented design patterns and high-level refactorings are popular means of implementing and evolving large object-oriented software systems. Unfortunately, these techniques are inadequately supported at implementation level by current-day software development environments. To alleviate this problem, we propose to use the promising technique of declarative metaprogramming. It offers a tigh...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2002